#pragma once
#ifndef NONCOPYABLE_H
#define NONCOPYABLE_H

namespace mymuduo {
/*
    * NonCopyable 被继承以后，派生类对象可以正常的构造和析构，但是派生类对象
    * 不能被复制和赋值。
    * 这个类的目的是为了禁止对象的复制和赋值操作。
    */
class NonCopyable
{
public:
    NonCopyable(const NonCopyable&) = delete;
    NonCopyable& operator=(const NonCopyable&) = delete;
protected:
    NonCopyable() = default;
    ~NonCopyable() = default;
};

} // namespace name

#endif // NONCOPYABLE_H